package cn.edu.hunau.dao;

import cn.edu.hunau.exception.DaoException;
import cn.edu.hunau.pojo.Product;

import java.util.List;
import java.util.Map;

/**
 * @Author 苏佳
 * @Date 2022 12 10 21 35
 **/
public interface ProductDao {
    /**
     * 根据商品id查询商品附属信息
     * @param id
     * @return
     * @throws DaoException
     */
    public String[] queryByPid(Integer id)throws DaoException;

    /**
     * 根据商品id查询商品信息
     * @param id
     * @return
     * @throws DaoException
     */
    public Product queryById(Integer id)throws DaoException;



    /**
     * 根据商品类别统计商品数量
     * @param cid
     * @return
     * @throws DaoException
     */
    public int countById(Integer cid)throws DaoException;

    /**
     * 根据cid进行分页查询
     * @param cid
     * @param beginIndex
     * @param size
     * @return
     * @throws DaoException
     */
    public List<Product> queryByCidLimit(Integer cid,int beginIndex,int size)throws DaoException;


    /**
     * 根据关键词统计商品数量
     * @param keyWord
     * @return
     * @throws DaoException
     */
    public int CountByKeyWord(String keyWord)throws DaoException;

    /**
     * 根据关键词进行模糊查询并分页
     * @param keyWord
     * @param beginIndex
     * @param size
     * @return
     * @throws DaoException
     */
    public List<Product> queryByKeyWordLimit(String keyWord,int beginIndex,int size)throws DaoException;
}
